Шаг 260 - Как не выдавать того, чего нет на складе.

Формируя отчет по складу Вы наверно сталкивались с ситуацией когда выписывается товар который не оприходован. Это в корне не правильно. Никаких минусов на складе быть не может. Получается при выписывании счет фактуры нужно проверять наличие товара. В шаге Шаг 15 - Номенклатура товара было рассказано как связать событие выбора с номенклатуры с некоторым действием. Получается что нам просто нужно посмотреть СКД период и если оно больше нуля то все нормально (подробнее о СКД Шаг 43 - Изучаем бухгалтерские итоги – СКД.). Вот примерно такой код.

Процедура Считаем() 
	Перем состоян;
	БухИтоги = СоздатьОбъект("БухгалтерскиеИтоги"); 
    	состоян=БухИтоги.СКД("41.4","С",,Номенклатура); 
	
    Если   состоян>0 Тогда 
	    	Цена= Номенклатура.Цена;
		Сумма=Цена*Количество;
		СуммаНДС=(Сумма/100)*НДС; 
		СуммаСНДС=Сумма+СуммаНДС;
    Иначе

        Предупреждение("Товара нет на складе"); 	
	КонецЕсли;	
КонецПроцедуры

И теперь при попытке выбора номенклатуры которой нет на складе мы получим сообщение.

260_1.gif (13332 b)

Hosted by uCoz